package com.zhn;

/**
 * 给你一个单链表的头节点 head ，请你判断该链表是否为回文链表。如果是，返回 true ；否则，返回 false 。
 */
public class IsPalindrome {
//先反转再比较的方法不能实现，会改变原有链表，无法通过所有用例

    public boolean isPalindrome(ListNode head) {
        StringBuilder sb = new StringBuilder();
        ListNode cur = head;
        while(cur != null){
            sb.append(cur.val);
            cur = cur.next;
        }
        int j = sb.length()-1;
        for(int i = 0;i < sb.length(); i++){
            if(sb.charAt(i) != sb.charAt(j)){
                return false;
            }
            j--;
        }
        return true;
    }
}
